package com.ruoyi.yijing.service;

import java.util.List;
import com.ruoyi.yijing.domain.CustomerInfoAccount;
import com.ruoyi.yijing.domain.CustomerInfoAccountToken;
import com.ruoyi.yijing.domain.CustomerInfoAccountVo;

/**
 * 客户账号Service接口
 * 
 * @author ruoyi
 * @date 2024-02-03
 */
public interface ICustomerInfoAccountService 
{
    /**
     * 查询客户账号
     * 
     * @param customerAccountUid 客户账号主键
     * @return 客户账号
     */
    public CustomerInfoAccount selectCustomerInfoAccountByCustomerAccountUid(Long customerAccountUid);

    public CustomerInfoAccountToken getToken(String token);

    /**
     * 查询客户账号列表
     * 
     * @param customerInfoAccount 客户账号
     * @return 客户账号集合
     */
    public List<CustomerInfoAccount> selectCustomerInfoAccountList(CustomerInfoAccount customerInfoAccount);

    /**
     * 新增客户账号
     * 
     * @param customerInfoAccount 客户账号
     * @return 结果
     */
    public int insertCustomerInfoAccount(CustomerInfoAccount customerInfoAccount);

    /**
     * 修改客户账号
     * 
     * @param customerInfoAccount 客户账号
     * @return 结果
     */
    public int updateCustomerInfoAccount(CustomerInfoAccount customerInfoAccount);

    /**
     * 批量删除客户账号
     * 
     * @param customerAccountUids 需要删除的客户账号主键集合
     * @return 结果
     */
    public int deleteCustomerInfoAccountByCustomerAccountUids(Long[] customerAccountUids);

    /**
     * 删除客户账号信息
     * 
     * @param customerAccountUid 客户账号主键
     * @return 结果
     */
    public int deleteCustomerInfoAccountByCustomerAccountUid(Long customerAccountUid);

    String saveCustomerAccountInfo(CustomerInfoAccountVo customerInfoAccount);
}
